sgdk
sys.h
Go to the documentation of this file.
00001 
00010 #ifndef _SYS_H_
00011 #define _SYS_H_
00012 
00013 
00014 #define PROCESS_PALETTE_FADING      (1 << 0)
00015 #define PROCESS_BITMAP_TASK         (1 << 1)
00016 #define PROCESS_TILECACHE_TASK      (1 << 2)
00017 #define PROCESS_SPRITEENGINE_TASK   (1 << 3)
00018 
00019 
00020 // internals V/H timer
00021 extern u32 vtimer;
00022 extern u32 htimer;
00023 
00024 
00031 extern _voidCallback *busErrorCB;
00038 extern _voidCallback *addressErrorCB;
00045 extern _voidCallback *illegalInstCB;
00052 extern _voidCallback *zeroDivideCB;
00059 extern _voidCallback *chkInstCB;
00066 extern _voidCallback *trapvInstCB;
00073 extern _voidCallback *privilegeViolationCB;
00080 extern _voidCallback *traceCB;
00087 extern _voidCallback *line1x1xCB;
00094 extern _voidCallback *errorExceptionCB;
00101 extern _voidCallback *intCB;
00111 extern _voidCallback *internalVIntCB;
00121 extern _voidCallback *internalHIntCB;
00131 extern _voidCallback *internalExtIntCB;
00132 
00133 
00141 void SYS_assertReset();
00148 void SYS_reset();
00149 
00156 u16 SYS_getInterruptMaskLevel();
00175 void SYS_setInterruptMaskLevel(u16 value);
00176 
00195 u16 SYS_getAndSetInterruptMaskLevel(u16 value);
00196 
00208 void SYS_disableInts();
00218 void SYS_enableInts();
00219 
00231 void SYS_setVIntCallback(_voidCallback *CB);
00243 void SYS_setHIntCallback(_voidCallback *CB);
00254 void SYS_setExtIntCallback(_voidCallback *CB);
00255 
00262 u16 SYS_isInVIntCallback();
00269 u16 SYS_isInHIntCallback();
00276 u16 SYS_isInExtIntCallback();
00283 u16 SYS_isInInterrupt();
00284 
00292 void SYS_die(char *err);
00293 
00294 
00295 #endif // _SYS_H_
 All Classes Files Functions Variables Typedefs Enumerations Defines